package com.samp.bblock.util;


public class StringUtils {
	
	/**
	 * 去掉字符串中不需要的字符，如数字，标点符号，空格等
	 * @param message
	 * @return
	 */
	public static String removeUnnecessaryChar(String message){
		if( message == null || "".equals(message.trim()) ){
			return null;
		}
		char[] chars = message.toCharArray();
		StringBuilder sb = new StringBuilder();
		for(char chr :  chars ){
			if( isChinese(chr) ){
				sb.append(chr);
			}
		}
		return sb.toString();
	}
	
	/**
	 * 判定输入的是否是汉字
	 * 
	 * @param c
	 *  被校验的字符
	 * @return true代表是汉字
	 */
	public static boolean isChinese(char c) {
	   /*
		* CJK的意思是“Chinese，Japanese，Korea”的简写 ，实际上就是指中日韩三国的象形文字的Unicode编码
		*	Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS ： 4E00-9FBF：Unicode 编码为 U+4E00～U+9FFF 的 CJK 统一文字 
		*	Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS ：F900-FAFF：CJK 兼容象形文字
		*	Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A ：3400-4DBF：CJK 统一表意符号扩展 A 
		*	Character.UnicodeBlock.GENERAL_PUNCTUATION ：2000-206F：常用标点
		*	Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION ：3000-303F：CJK 符号和标点 　　
		*	Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS ：FF00-FFEF：半角及全角形式
		*/
		 Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
		 if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS) {
			 return true;
		 }
		 return false;
	}
	
	/**
	 * copy from common-lang
	 * @param cs
	 * @return
	 */
    public static boolean isBlank(CharSequence cs) {
        int strLen;
        if (cs == null || (strLen = cs.length()) == 0) {
            return true;
        }
        for (int i = 0; i < strLen; i++) {
            if (Character.isWhitespace(cs.charAt(i)) == false) {
                return false;
            }
        }
        return true;
    }
    
    public static String arrayToString(String[] strs){
    	if( strs == null || strs.length == 0){
    		return "";
    	}
    	StringBuilder sb = new StringBuilder();
    	for( int i = 0 ; i < strs.length ; i++ ){
    		sb.append(strs[i]);
    		if( i != strs.length -1 ){
    			sb.append(";");
    		}
    	}
    	return sb.toString();
    }
	public static void main(String[] args) {
		String result = removeUnnecessaryChar("  d  c.。				9990");
		System.out.println(result);
		
	}

}
